home *** CD-ROM | disk | FTP | other *** search
/ PC-SIG Library 8 / PC-SIG Library CD-ROM (8th Edition) (1990-04).iso / 1901_000 / disk1909 / graph.dta < prev    next >
Encoding:
Text File  |  1989-09-17  |  54.0 KB  |  1,717 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                               GRAPH User's Manual
  11.  
  12.  
  13.  
  14.             Graph V3.1 - An experiment in digital waveform synthesis.
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.                                   Authored by: 
  28.                                Pacific Laser Art; 
  29.                            President:  Thomas C. Poff 
  30.                                 #9 Tunzi Parkway
  31.                               Petaluma, CA  94952
  32.  
  33.                        Release date :  18 September 1989
  34.                                   Version 3.1
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.                          (c) 1989 by Pacific Laser Art
  52.  
  53.        Permission is granted to copy this document and related software.
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.      GRAPH User's Manual                                          Page 2
  68.  
  69.  
  70.         
  71.      "GRAPH" is a program designed to allow you, the user, to generate a 
  72.      myriad of two-dimensional shapes.  By plotting two individual 
  73.      waveforms on a cartesian, (or two dimensional) plane, you will be able 
  74.      to create a variety of beautiful shapes.
  75.  
  76.      Most of the shapes that this program can produce are by nature 
  77.      abstract.  However, with some practice it is possible to gain a talent 
  78.      for creating shapes that are easily recognizable to us as familiar 
  79.      objects.  
  80.  
  81.      We much prefer the abstract shapes, personally, and for this reason, 
  82.      the program has been developed from this standpoint.
  83.  
  84.  
  85.      In the next several pages, We will discuss the varying levels of
  86.      sophistication that have been written into "Graph."  We will start by 
  87.      explaining the simplest functions and will gradually introduce you to 
  88.      it's fancier accouterments!  "Graph" has been written to be one of the 
  89.      easiest of it's kind to operate due to it's unique user interface.  We 
  90.      hope that you will find agreeable!
  91.  
  92.      Before we begin the first lesson, it is necessary to bring the 
  93.      following information to your attention.
  94.  
  95.      First of all, whether or not you like the program, we would very much 
  96.      like to hear your thoughts on it.  Your input is needed!  The authors 
  97.      are anxious to find ways of improving the existing software as well as 
  98.      incorporating new ideas into it!  If you do like the program, we would 
  99.      appreciate receiving a registration fee from you.  The registration 
  100.      cost for the first two versions of "GRAPH" is $25 and will provide you 
  101.      with the following items:
  102.  
  103.      (1) A 100% free update to the next major update of GRAPH
  104.          (with updated user documentation on the disk). 
  105.      (2) A bi-annual newsletter with tips about how to make the most 
  106.          of programs published by Pacific Laser Art.
  107.      (3) Notification of new software releases. 
  108.          (See the appendix for upcoming developments.)
  109.  
  110.       
  111.      Whew, that's enough of the sales pitch!  Please write to us, 
  112.      regardless of whether or not you wish to become registered.  If 
  113.      nothing else, send a postcard with a one-liner with your strongest 
  114.      impression about "Graph."
  115.  
  116.      Registrations and suggesstions should be sent to:
  117.  
  118.      Pacific Laser Art
  119.      #9 Tunzi Parkway
  120.      Petaluma, CA  94952
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.      GRAPH User's Manual                                          Page 3
  134.  
  135.  
  136.      Hardware Recommendations:
  137.  
  138.      The first action you will want to take with your new program will be 
  139.      to make sure that it will run correctly on your equipment.
  140.  
  141.      Of particular concern is the use of display adapters.  Any of the 
  142.      following displays will function well with "Graph."
  143.  
  144.      1) All types of EGA adapters, (including monochrome EGA), will be 
  145.         perfect for executing GRAPH.
  146.  
  147.      2) VGA and MCGA adapters will work equally well.
  148.  
  149.      3) Believe it or not, this program will also work well with  the 
  150.         Hercules Graphics adapters and the AT&T400 display adapters.  
  151.  
  152.      The CGA displays will not function with "Graph" as they simply do not 
  153.      have the amount of resolution required to operate properly.
  154.  
  155.      Of secondary importance to you as a user will be the speed of the 
  156.      machine that you are using.  Although it is unknown to many users of 
  157.      personal computers, a math coprocessor can be most crucial in terms of 
  158.      performance.  Six megahertz PCs can outperform sixteen megahertz 
  159.      machines when a coprocessor is present.  This is common with programs 
  160.      like GRAPH that must perform a great deal of floating point 
  161.      arithmetic.  For this reason, I recommend that you look first for an 
  162.      available machine with a math coprocessor, before seeking sheer 
  163.      microprocessor speed.
  164.  
  165.      If you do have a slower machine, that is okay too.  You will find, 
  166.      however, that some really high-resolution plots can take hours instead 
  167.      of minutes on the slower 8088 machines.  To be fair, I should note 
  168.      that most of your waveforms will take only seconds to plot.
  169.  
  170.      Lastly, there must exist 512K of RAM on the motherboard of the 
  171.      computer in which you are to use.  
  172.  
  173.  
  174.  
  175.      "Getting down to business"
  176.  
  177.      Now that you are aware of the necessary hardware to use with GRAPH, 
  178.      you can begin our first "session" with the program itself.
  179.  
  180.      To begin, insert your diskette in the computer.  If you look at the 
  181.      directory, you will find several executable files.  For the moment, we 
  182.      will only look at the most important one.
  183.  
  184.      At the dos prompt, type in the word GRAPH and press the <Enter> key.  
  185.      In a few seconds, a happy but slightly intimidating screen with some text 
  186.      will appear.  
  187.  
  188.      Now then, at the upper left hand corner you will please notice a large 
  189.      green box.  The box has a horizontal dotted-blue line in the middle.  
  190.      You will be able to plot individual waveforms in this area.
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.      GRAPH User's Manual                                          Page 4
  200.  
  201.  
  202.      On the lower right hand side, you will notice that there exists a 
  203.      series of four small boxes containing text.  The boxes are used for 
  204.      choosing basic trigonometric waveforms, their durations and 
  205.      amplitudes.  In fact, each one of these boxes makes up one user 
  206.      controlled "oscillator."  People have pointed out that GRAPH looks, 
  207.      (and acts), a lot like a video game, because the "controls" are easy 
  208.      to operate and the program in itself is extremely interactive.
  209.  
  210.      At the bottom of the screen you will see two message boxes.  The first 
  211.      message tells you how to get a list of basic commands, while the
  212.      second mentions that it is possible to leave the program by pressing 
  213.      ctrl-x.
  214.  
  215.      I mention this now, as you will soon see that when you give the 
  216.      program invalid input, the resulting error message will scroll the 
  217.      current messages from the screen.  The message area, you see, is set 
  218.      up to operate as a queue.  
  219.  
  220.      At this point, you will want to act upon one of these messages!  If 
  221.      you are a wise-guy (person), and you choose the ctrl-x option, just 
  222.      remember that you'll have start to over!  All joking aside, you should 
  223.      now press the 'L' key.  This will provide you with a list of available 
  224.      commands which will be your key to operating GRAPH until you become 
  225.      familiar with it.  You may get to the list of commands at any time, 
  226.      except during a plot, or when you are entering data from the keyboard.
  227.  
  228.  
  229.  
  230.      Lesson 1:  Plotting simple waveforms.
  231.  
  232.  
  233.      Section 1.1 - Sine wave plot.
  234.  
  235.      Our first objective will be to plot a sinewave on the display.  To 
  236.      create this sinewave, we will do the following exercise:
  237.  
  238.  
  239.      Exercise:
  240.  
  241.      Press the key on your keyboard after
  242.  
  243.      ||       reading the associated comments.
  244.      ||          
  245.      ||         ||
  246.      ||         ||
  247.      \/         \/
  248.  
  249.      < 1 > :  This keystroke ensures that our current "oscillator" will be 
  250.               designated as oscillator #1.
  251.      <F1 > :  This keystroke will mark the sinewave function for plotting 
  252.               in the "Oscillator #1" box.  A small "blurb" should appear in 
  253.               the sinewave oval as soon as the <F1> key is pressed.  If it
  254.               does not appear, try pressing the <F1> key several times 
  255.               until you get a feeling for how waveforms are enabled.  Note 
  256.               that the <F1> key acts as a "toggle" switch to turn the 
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.      GRAPH User's Manual                                          Page 5
  266.  
  267.  
  268.               waveform on or off.
  269.  
  270.      <F10> :  When you have successfully enabled the sinewave oscillator, 
  271.               push the <F10> key to plot the waveform.  A beautiful 
  272.               sinewave of length one cycle should now grace your computer 
  273.               screen.
  274.  
  275.      <ESC> :  When you are through admiring your first waveform, clear the 
  276.               waveform display box by pressing the Escape key.
  277.  
  278.      <F2 > :  Now press <F2>, <F3>, <F4>, <F5> and <F6> in order to enable 
  279.      <F3 > :  each of the trigonometric waveforms in oscillator #1.
  280.      <F4 >    (These keys work in the same manner as the <F1> key, but
  281.      <F5 >     for cosine, cotangent, cosecant, secant, & cotangent
  282.      <F6 >     respectively.)
  283.  
  284.      <F10> :  Please press the <F10> key to plot all six basic 
  285.               trigonometric waveforms simultaneously.  Pretty neat, huh?
  286.  
  287.      <ESC> :  Now, press the Escape key to clear the waveform display box.
  288.      < D > :  Press <D> to reset all oscillator values to their original 
  289.               state.  This returns all oscillator parameters to the 
  290.               original settings present when you first ran the program.
  291.  
  292.  
  293.  
  294.  
  295.      Section 1.2:  Plotting a sine wave with different AMPLITUDES & CYCLES.
  296.  
  297.      In  this lesson, we will learn how to plot waveforms  with  amplitudes 
  298.      and  cycles  specified  by the user.  Let us now  plot  the  following 
  299.      waveforms:
  300.  
  301.  
  302.      Exercise:
  303.  
  304.      <F1 > :  Press the <F1> key to enable the sine wave.
  305.      < A > :  Press the <A> key to change the amplitude of the sine wave.  
  306.               When you press the key, you will see a cursor at the right 
  307.               hand side of the screen just beckoning to you for data-input.  
  308.               Please enter the number 100 on your keyboard and press 
  309.               <Enter>.
  310.      <F10> :  Plot the waveform.  Notice how the sinewave is larger from 
  311.               top to bottom than the last time that we plotted it.
  312.  
  313.      < A > :  Next, change the <A>mplitude again, but enter the number 20 
  314.               on your keyboard and press <Enter> this time.
  315.      < C > :  Now were cooking!  Press the <C> key and enter the number 5 
  316.               followed by the <Enter> key.  This will tell the computer
  317.               that you want a sinewave with a duration of 5 cycles to be 
  318.               plotted on the screen.
  319.      <F10> :  Plot the waveform.  Now you will see a new small sinewave 
  320.               that goes up and down several times.  The waveform is short, 
  321.               because we changed the amplitude to a smaller value (20).  It 
  322.               "oscillates," because we have told it to cycle up and down 
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.      GRAPH User's Manual                                          Page 6
  332.  
  333.  
  334.               five times.  Can you dig it?
  335.      <ESC> :  Clear the screen.
  336.      < D > :  Reset oscillators back to the default values again.
  337.  
  338.      Before you pushed escape, you should have had two waveforms displayed 
  339.      in the waveform display box.  If you did not, you should probably go 
  340.      back to the the beginning of the lesson and start again.  Don't be 
  341.      discouraged.  As you may know, sometimes it can take a little time to 
  342.      get used to operating a new program.
  343.  
  344.  
  345.  
  346.      Section 1.3:  Controlling the PHASE SHIFT of a trigonometric waveform.
  347.  
  348.      The last of the individual oscillator control options is the phase 
  349.      shift offset control.  If you are familiar with trigonometry, you will 
  350.      remember that every sinewave has a phaseshift that can range from 0PI 
  351.      to 2PI.  Since it is most important to think in terms of PI for this 
  352.      parameter, we will specify a number between 0 and 2 upon input.  To 
  353.      see how this affects a cosine wave, perform the following operations:
  354.  
  355.  
  356.      Exercise:
  357.  
  358.      <F3 > :  Enable the cosine waveform.
  359.      <F10> :  Plot the cosine waveform.
  360.      < S > :  Change the phase <S>hift by entering the <S> key.   Type 
  361.               in the number 0.1 and push the <Enter> key.
  362.      <F10> :  Plot  the phaseshifted cosine waveform.  Note that  it's 
  363.               position  has  shifted slightly to the right.
  364.      < S > :  Now Change the phase <S>hift to 0.2
  365.      <F10> :  Plot the phaseshifted cosine waveform.
  366.      <ESC> :  Clear the screen.
  367.      < D > :  Reinitialize default values.
  368.  
  369.      If you keep incrementing the phase <S>hift value in 0.1 increments, 
  370.      you will eventually approach 2PI.  Note that this parameter is entered 
  371.      in terms of PI.  Another way of looking at this is to say that we can 
  372.      increment the phaseshift of the waveform by one-tenth of PI, (.1 PI = 
  373.      1/10 PI = ), until we reached 2PI.  When we reached the 2PI phase 
  374.      shift offset, we will noticed that the waveform was write back where 
  375.      it started from.
  376.  
  377.      If you wish to see this, try repeating the exercise and keep 
  378.      incrementing the phaseshift offset to 0.3, 0.4, 0.5... until you 
  379.      approach 2.
  380.  
  381.      In the last several pages we have covered the concepts of oscillator 
  382.      control.  If you did not feel comfortable with the exercises you have 
  383.      performed, you should probably review the exercises again.
  384.  
  385.  
  386.  
  387.  
  388.      Lesson 2:  Waveform RESOLUTION/ Producing a UNIT CIRCLE.
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.      GRAPH User's Manual                                          Page 7
  398.  
  399.  
  400.  
  401.  
  402.  
  403.      In the second lesson, you will discover how to modulate one waveform 
  404.      with another.  That is, you will be taught how to take one waveform, 
  405.      such as a sine wave, and sum it with another waveform, perhaps a 
  406.      cosine wave.
  407.  
  408.      Before we begin the explanation of how to modulate waveforms, however, 
  409.      you will first be shown how to alter the resolution of any plotted 
  410.      waveform.
  411.  
  412.  
  413.  
  414.      Section 2.1 - Controlling the resolution of a waveform.
  415.  
  416.      You may have noticed that when you choose to plot a waveform at two 
  417.      cycles, there are no apparent breaks or separations in the waveform 
  418.      itself.  However, if you plot a waveform at ten cycles, it is a 
  419.      different matter.  At twenty-five cycles, the waveform becomes 
  420.      unrecognizable.  Try the following exercise to demonstrate this aspect 
  421.      of the program:
  422.  
  423.  
  424.      Exercise A:   What do you think will happen?
  425.  
  426.      <F1 > :  Enable the sinewave
  427.      <F10> :  Plot the waveform at 1 complete cycle.
  428.      < C > :  Change the waveform cycle count to 10.
  429.      <F10> :  Plot the waveform at 10 complete cycles.
  430.      <ESC> :  Clear screen.
  431.      < C > :  Change the waveform cycle count to 25.
  432.      <F10> :  Plot the waveform at 25 complete cycles.
  433.      <ESC> :  Clear screen.
  434.      < D > :  Reinitialize default values.
  435.  
  436.      Can you see how the waveform becomes disconnected as the cycle count 
  437.      increases?  If you cannot, please try Exercise A again!
  438.  
  439.  
  440.      This behavior occurs because the waveforms are forced to have the same 
  441.      number of "samples" per plot.  This means that no matter what 
  442.      oscillator(s) you assign, the waveform will always be plotted with the
  443.      same number of elements in terms of resolution.  So, if you plot a 
  444.      sine curve at one cycle as opposed to a curve at ten cycles, the same 
  445.      number of dots are plotted on the screen.
  446.  
  447.      In order to acheive a more continuous waveform at higher cycle 
  448.      settings, we must increase the resolution.  This is done by changing 
  449.      the resolution posted at the middle right hand section of the screen.
  450.      Let's try it, shall we:
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.      GRAPH User's Manual                                          Page 8
  464.  
  465.  
  466.  
  467.      Exercise B:
  468.  
  469.      <F1 > :  Enable the sinewave
  470.      < C > :  Change the waveform cycle count to 10.
  471.      <F10> :  Plot the waveform at 10 complete cycles.
  472.      < R > :  Change the waveform resolution to 0.25
  473.      <F10> :  Replot the waveform.
  474.      <ESC> :  Clear the screen
  475.               ( Do not reinitialize default values! )
  476.  
  477.      If all went well, you should be able to see how the new waveform is 
  478.      more continuous than it was before.  Note that in order to increase 
  479.      the resolution, we had to decrease the input value (from 1.5 to 0.25)
  480.  
  481.      The advantage with greater resolution, is that we can see more of the 
  482.      waveform.  If you increase the number of cycles, you must certaintly 
  483.      beware of the resolution setting and readjust it accordingly.  The 
  484.      drawback to increasing the resolution of a waveform is that it takes
  485.      more time to plot than a waveform plotted at low resolution.  This 
  486.      fact will become more apparent as we venture into modulated waveforms.
  487.  
  488.  
  489.  
  490.      Section 2.2 - The infamous unit circle.
  491.  
  492.      Before we get into an explanation of the "heavier" part of this 
  493.      program, let us digress to something easy to understand.  Some of you 
  494.      may have been wondering whether or not you were ever going to see a 
  495.      unit circle.  The answer is most certaintly, "Yes!"  It is not a 
  496.      terribly useful option, but since it can be a comforting thing to see 
  497.      a unit-circle, it has been included in the program.  Using the 
  498.      previous settings, perform the following task:
  499.  
  500.  
  501.      Exercise:
  502.  
  503.      < R > :  Change <R>esolution to 0.1
  504.      < U > :  Enable the unitcircle grid.
  505.      <F10> :  Plot the waveform.
  506.               (You can press <ESC> to stop the plotting in "mid-stream.")
  507.      <ESC> :  Clear the screen.
  508.      < U > :  Disable the unitcircle grid.
  509.      < D > :  Reinitialize default values.
  510.  
  511.      As you can see, as the waveform cycles from 0 to 2PI, a pointer moves 
  512.      around the unit circle accordingly.  It should be noted that this 
  513.      option slows down the plotting of the waveform and thus should be 
  514.      executed with care during plots at high resolution.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.      GRAPH User's Manual                                          Page 9
  530.  
  531.  
  532.      Lesson 3:  WAVEFORM MODULATION.
  533.  
  534.  
  535.      This section will tell you about how to obtain modulated or complex 
  536.      waveforms.  For those of you in the dark, a modulated/complex waveform 
  537.      is a waveform that consists of several simple waveforms that are mixed 
  538.      together in one way or another.  
  539.  
  540.      An example of a complex waveform could be two sinewaves that are added 
  541.      to each other.  The sinewaves could very well be different in terms of 
  542.      the number of cycles within a given interval.  Their amplitudes could 
  543.      also differ from one another.  You can also mix waveforms with 
  544.      different phaseshift offset, as we'll discuss in the theoretical 
  545.      example below.
  546.  
  547.  
  548.      Section 3.1 - A theoretical look at simple and complex sinewaves.
  549.  
  550.      To help you imagine this "mixing" of waveforms together, you might 
  551.      note the following example.  Some children take great pleasure in 
  552.      hitting long pipes planted on playgrounds with their hands.  This 
  553.      causes the pipe to fiercly vibrate.  You may have done this yourself 
  554.      when you were a child.
  555.  
  556.      Now take that example one step further.  Imagine a very long metal 
  557.      pipe with its two ends planted in the ground.  These are often found 
  558.      at school playgrounds.  Now then, imagine that you have a baseball 
  559.      bat.  If you were to pound on the center of the pipe, you would see it 
  560.      oscillate back and forth.  Through this action, you would create a 
  561.      pair of sinewaves that travel back and forth through the pipe.  If you 
  562.      were to inspect the pipe from several careful angles, you might even 
  563.      be able to see or feel the oscillations moving through the pipe. 
  564.  
  565.      Finally, if you really got into and started hitting the pipe 
  566.      repeatedly with the bat, you would notice that afterwards, when you 
  567.      touched the pipe, it would oscillate in a seemingly erratic manner.  
  568.      In actuality, these oscillations would represent a complex waveform
  569.      composed of a lot of sinewaves traveling at the same rate of 
  570.      oscillation, but at a different phaseshift settings.  
  571.  
  572.      Note:  Please do not try this experiment at home!
  573.  
  574.  
  575.  
  576.      Section 3.2 - Modulating one waveform with another.
  577.  
  578.      Ahhh, finally what we've been patiently waiting for.  This is the 
  579.      challenge that separates the alligators from the crocodiles!  
  580.      Seriously, it's not that difficult, but you may need to take some time 
  581.      covering this material and repeating various exercises.
  582.  
  583.      Make sure that you have reinitialized the default values.  All 
  584.      waveforms should be disabled (or turned off) before performing the 
  585.      following instructions.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.      GRAPH User's Manual                                          Page 10
  596.  
  597.  
  598.  
  599.      Exercise A:
  600.  
  601.      < R > :  Change <R>esolution to 1.5
  602.      < 1 > :  Assign oscillator #1.
  603.      <F1 > :  Enable the sinewave in oscillator #1.
  604.      < 2 > :  Assign oscillator #2.  (The oscillator pointer will move.)
  605.      <F1 > :  Enable the sinewave in oscillator #2.
  606.      < C > :  Change the cycle count in oscillator #2 to 3.
  607.      < M > :  Enter the following formula EXACTLY:
  608.               (O1+O2)
  609.               Press <Enter> to enter this formula.  Make sure that you 
  610.               typed in O's and NOT zeroes.  This is most important.  Zeroes
  611.               will not work!
  612.  
  613.  
  614.               This command tells the program that you want to add the first 
  615.               Oscillator to the second Oscillator during the plotting of 
  616.               the waveforms.  This is how you specify specific waveforms 
  617.               that you want to "mix" together while the waveforms are being 
  618.               plotted.
  619.  
  620.      <F7 > :  Enable modulation mode so that "Graph" will know to modulate 
  621.               the waveforms specified in the modulation formula.
  622.      <F10> :  Plot the waveforms.  When you hit the <F10> key, three 
  623.      waveforms should appear on the screen.  Two of the waveforms are your 
  624.      component waveforms, and the other is the modulated waveform.  In 
  625.      The modulated waveform represents the "sum" of the two other 
  626.      waveforms.
  627.  
  628.      Let's try another one:
  629.      < R > : Change <R>esolution to 0.5
  630.      < 1 > : Assign oscillator #1.
  631.      < C > : Change cycle count to 12.
  632.      <F10> : Plot the waveform.
  633.      <ESC> : Clear screen.
  634.  
  635.      Pretty darn neat huh!  Now, you might have noticed that things are 
  636.      getting pretty crowded now.  In order to alleviate this problem, we 
  637.      can keep the component waveforms from displayingon the screen during a 
  638.      plot:
  639.  
  640.      <F9 > :  Specify only the modulation waveform.
  641.      <F10> :  Replot the modulation waveform only.
  642.      <ESC> :  Clear screen
  643.      < D > :  Reinitialize default parameters. 
  644.  
  645.  
  646.      It should be stated that <F7> and <F9> act as toggle switches.  Thus, 
  647.      if you press them once, they become active, and if you press them again, 
  648.      they become inactive.
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.      GRAPH User's Manual                                          Page 11
  662.  
  663.  
  664.      Exercise B:  Plot a complex waveform consisting of four component 
  665.                   waveforms.
  666.  
  667.      < R > :  Change <R>esolution to 1.
  668.      < 1 > :  Specify Oscillator #1.
  669.      <F1 > :  Specify sinewave.
  670.  
  671.      < 2 > :  Specify Oscillator #2.
  672.      <F1 > :  Assign sinewave.
  673.      < C > :  Set cycles to 2.
  674.  
  675.      < 3 > :  Specify Oscillator #3.
  676.      <F1 > :  Assign sinewave.
  677.      < C > :  Set cycles to 4.
  678.      < 4 > :  Specify Oscillator #4.
  679.      <F1 > :  Assign sinewave.
  680.      < C > :  Set cycles to 8.
  681.  
  682.      < M > :  The old modulation formula was only good for two waveforms.  
  683.               Try the following one to mix all four waveforms together:
  684.  
  685.               (O1+O2+O3+O4)/4
  686.  
  687.               Remember to type in "Os" and NOT "0s" in the modulation 
  688.               formula.  This new formula will sum the four waveforms to 
  689.               and divide the total by four to create the new complex 
  690.               waveform.
  691.  
  692.      <F7 > :  Enable waveform modulation.
  693.      <F10> :  Plot the component and modulation waveforms.
  694.  
  695.      <ESC> :  Clear the screen.
  696.      <F9 > :  Disable component waveforms.
  697.      <F10> :  Plot modulation waveform only.
  698.      <ESC> :  Clear screen
  699.      < D > :  Reinitialize default parameters. 
  700.  
  701.      You may have noticed that with all four waveforms assigned, the 
  702.      graphing does become slower.  You can of course try other modulation 
  703.      formulae, such as:
  704.  
  705.      < M > :  (O1+O2+O3)/3         ( This adds oscillators 1,2 & 3 together 
  706.                                      and divides the result by three. )
  707.      < M > :  (O1+O2)/2            ( This adds oscillators 1 & 2 together
  708.                                      and divides the result by two. )
  709.      < M > :  (O1)                 ( This plots only the sum of all 
  710.                                      waveforms enabled in oscillator #1. )
  711.      < M > :  (O1+O3)/5            ( This adds oscillators 1 & 3 together
  712.                                      & divides the result by five. )
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.      GRAPH User's Manual                                          Page 12
  728.  
  729.  
  730.      The modulation formula decoding is kept quite simple in order to 
  731.      increase graphing performance in terms of time.  The tradeoff is that 
  732.      there is very little error checking in this option.  You should avoid 
  733.      the following kinds of mistakes when creating waveform modulation 
  734.      formulae:
  735.  
  736.      1) Do not try to add an oscillator where no waveforms are enabled.
  737.      2) Do not try to divide a set of waveforms [e.g. (O1+O3) ] by a number 
  738.         exceeding nine.
  739.      3) Do not try to multiply or divide oscillators.
  740.  
  741.      Performing any one of the above "no-no's" will cause the program to 
  742.      ignore you when you hit the plot key.  It will try to plot, but will 
  743.      find an inconsistency in the modulation waveform, causing nothing to 
  744.      be plotted.
  745.  
  746.      Hint:  if you are having problems with a waveform that won't plot, 
  747.      check to make sure that you have at least one waveforms enabled in 
  748.      each oscillator that appears in the modulation formula!
  749.  
  750.  
  751.  
  752.  
  753.  
  754.      Section 3.3 - Complex waveforms constructed from one oscillator.
  755.  
  756.  
  757.      Thus far, we have specified only one waveform per oscillator in the
  758.      complex waveform plots.  However, we can easily choose any number of 
  759.      the basic waveforms included in each oscillator.  To illustrate this, 
  760.      you may wish to perform the following exercise:
  761.  
  762.  
  763.  
  764.      Exercise:
  765.  
  766.      <F1 >  : Enable the sinewave and cosecant function in oscillator #1.
  767.      <F2 >
  768.  
  769.      < M >  : Sum the enabled waveforms within oscillator #1 by the formula:
  770.              (O1)
  771.  
  772.      <F7 >  : Enable waveform modulation.
  773.      <F10>  : Plot the modulated waveform.  Different, isn't it?
  774.  
  775.      < A >  : Change the amplitude to 10.
  776.      <F10>  : Replot the modulated waveform.
  777.  
  778.      <F3 >  : Enable all other waveforms in the oscillator.
  779.      <F4 >
  780.      <F5 >
  781.      <F6 >
  782.  
  783.      <F9 >  : Display the modulation waveform only.  ( optional )
  784.      <ESC>  : Clear the screen.
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.      GRAPH User's Manual                                          Page 13
  794.  
  795.  
  796.      <F10>  : Plot the waveform again.
  797.      <ESC>  :  Clear screen
  798.      < D >  :  Reinitialize default parameters. 
  799.  
  800.  
  801.      Note that this exercise modulates off of one oscillator only.  If you 
  802.      wish, you may perform this exercise with all 4 oscillators combined.  
  803.      This will give you a total of 24 waveforms combined in the final 
  804.      modulated waveform!  You will need to keep the amplitude values small 
  805.      in order to see the modulated waveform.
  806.  
  807.      Section 3.4 - Multiple plots
  808.  
  809.  
  810.      Multiple plots can useful as well as beautiful.  By changing values 
  811.      phase shift values in one or more oscillators, you can have a group of
  812.      different waveforms on the screen at one time.  The waveforms can be 
  813.      related to each other in a visual manner.  To illustrate this 
  814.      phenomena, please try the following exercise:
  815.  
  816.  
  817.      Exercise A:
  818.  
  819.      <F3 > :  Enable the cosine in oscillator #1.
  820.  
  821.      < 2 > :  Assign oscillator #2.
  822.      <F3 > :  Enable the cosine.
  823.      < C > :  Change the cycle count to 2.
  824.  
  825.      < 3 > :  Assign oscillator #3.
  826.      <F3 > :  Enable the cosine.
  827.      < C > :  Change the cycle count to 3.
  828.  
  829.      < 4 > :  Assign oscillator #4.
  830.      <F3 > :  Enable the cosine.
  831.      < C > :  Change the cycle count to 4.
  832.  
  833.      < M > :  Enter the following modulation formula:
  834.               (O1+O2+O3+O4)
  835.  
  836.      <F7 > :  Allow waveform modulation.
  837.      <F9 > :  Display modulation waveform only.
  838.  
  839.      <F10> :  Plot the waveform.
  840.  
  841.  
  842.      < 2 > :  Assign oscillator #2.
  843.      < S > :  Change the phaseshift value to 0.1
  844.      <F10> :  Plot the waveform.
  845.  
  846.      < S > :  Change the phaseshift value to 0.2
  847.      <F10> :  Plot the waveform.
  848.  
  849.      < S > :  Change the phaseshift value to 0.3
  850.      <F10> :  Plot the waveform.
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.      GRAPH User's Manual                                          Page 14
  860.  
  861.  
  862.  
  863.      < S > :  Change the phaseshift value to 0.4
  864.      <F10> :  Plot the waveform.
  865.  
  866.      ------>  Keep incrementing the phaseshift value by 0.1 and plotting 
  867.      the waveform until after you have plotted the waveform with the value 
  868.      1.9 as the phaseshift offset.  This is a sample of the kind of 
  869.      graphing patterns that you can produce with GRAPH.  With a little 
  870.      practice and experimenting, you can create a wide variety of complex 
  871.      graphs without ever having to know the equations behind them.
  872.  
  873.      When you are done, clear the screen and reset defaults as we have done 
  874.      before:
  875.  
  876.      <ESC>  :  Clear screen
  877.      < D >  :  Reinitialize default parameters. 
  878.  
  879.  
  880.  
  881.  
  882.  
  883.      Lesson 4 - TWO-DIMENSIONAL waveshaping.
  884.  
  885.      Arguably the most interesting aspect of GRAPH is it's capability to 
  886.      create an array of two-dimensional objects.  This is really what the 
  887.      program is designed to do best.
  888.  
  889.      We will start with a simple circle and quickly work up to more complex 
  890.      shapes.  If you feel fairly comfortable with Lesson Three, you will 
  891.      not probably not have any problems with this section.  If you only did 
  892.      marginally well in the last section, you should probably go back and 
  893.      perform the exercises in Lesson Three again.  If you do go back to 
  894.      repeat those exercises, try substituting some of your own values.  
  895.  
  896.      The secret behind this program is to be creative, not necessarily 
  897.      mathematical.  You should develop a feeling for what complex waveforms 
  898.      that might be neat with some practice.
  899.  
  900.  
  901.  
  902.  
  903.      Section 4.1 - A second bank of oscillators.
  904.  
  905.  
  906.      Two dimensional objects are created by plotting two "equations" 
  907.      against each other.  You can think of an "equation" as being the 
  908.      represented by any complex or modulated waveform that we studied in 
  909.      Lesson Three.  We already have access to the one modulated waveform.  
  910.      In order for us to get the second dimension, we must have access to 
  911.      another, completely independent complex waveform.
  912.  
  913.      To reiterate, two dimensional objects can be created by plotting two 
  914.      complex waveforms against each other on a cartesian plane (or x,y 
  915.      axis).  In other words, one of the complex waveforms is plotted on the 
  916.      x axis, whilst the other is plotted on the y axis.
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.      GRAPH User's Manual                                          Page 15
  926.  
  927.  
  928.  
  929.      This can be a difficult concept to accept for some.  We are used to 
  930.      simply drawing objects with our pencils, or if we are on a computer, 
  931.      some of us use a "mouse" to draw shapes.  We don't even really think 
  932.      about what we're doing when we draw.  The fact that we usually base 
  933.      our drawings on a horizontal and vertical axis is mostly taken for 
  934.      granted.  However, that is all a cartesian plane is.  The x axis in 
  935.      the cartesian coordinate plane represents the horizontal, while the y 
  936.      axis represents the vertical.  
  937.  
  938.  
  939.      So it is with graph.  One complex waveform is plotted on the 
  940.      horizontal, while another is plotted on the vertical.  The only 
  941.      problem is that we have only one complex waveform available to us.
  942.  
  943.      For this reason, GRAPH has been given an alternate set of oscillators.  
  944.      These oscillators are called "Bank 1" and can be addressed by pushing 
  945.      the following key:
  946.  
  947.      < B > :  Change to Oscillator Bank #1.
  948.  
  949.      You may have noticed in the middle right hand side of the screen that 
  950.      there is a prompt that says the word "Bank."  This refers to the 
  951.      current bank setting.  In the past, the bank has always been set to 
  952.      zero.  From this point on, however, you will need to use both banks of 
  953.      oscillators together to generate the shapes that we want to see.
  954.  
  955.      < B > :  Change the Oscillator Bank back to #0.
  956.  
  957.      (Note that the bank change option is simply a "toggle" switch that can 
  958.      be used to quickly choose either bank 0 or bank 1).
  959.  
  960.  
  961.  
  962.  
  963.      Section 4.2 - Plotting a circle.
  964.  
  965.  
  966.      For our first two-dimensional graph, we will need plot a sine wave 
  967.      against a cosine wave.  For those of you who are not terribly familiar
  968.      with trigonometry, you will want to know that a sine wave on the 
  969.      horizontal (x) axis, plotted against a cosine wave on the vertical (y) 
  970.      axis will generate a circle.
  971.  
  972.      To create the circle you will need to do the following:
  973.  
  974.      Exercise:
  975.  
  976.      < M > : Enter the following modulation formula:
  977.              (O1)
  978.      <F7 > : Enable modulation.
  979.      <F9 > : Enable Plot for the modulation waveform only.
  980.  
  981.      <F1 > : Enable the sinewave in oscillator #0.
  982.      <F10> : Plot the sinewave.
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.      GRAPH User's Manual                                          Page 16
  992.  
  993.  
  994.  
  995.      < B > : Change to Oscillator Bank #1.
  996.      <F3 > : Enable the cosinewave in oscillator #0.
  997.      <F10> : Plot the cosinewave.
  998.  
  999.      <Alt-F10> 
  1000.            : This command plots a circle in the upper right hand corner of 
  1001.              the display.  ( This is not the unit circle. )
  1002.  
  1003.      Note that the modulation formula and the modulation enable controls 
  1004.      are associated with both banks of oscillators.
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.  
  1011.      Section 4.3 - "Rotating" the circle.
  1012.  
  1013.  
  1014.      Due to a convenient special case in trigonometry, we can create a 
  1015.      sequence of shapes that appear much like an ellipse rotating in three 
  1016.      dimensions.  This can be done by simply incrementing the phaseshift 
  1017.      offset value of either oscillator by 0.1 repeatedly after plotting.  
  1018.      To illustrate this, try the following exercise:
  1019.  
  1020.  
  1021.      Exercise:  Plot a set of objects that appear as a rotating ellipse.
  1022.  
  1023.      < S >     :  Set the phaseshift to 0.1
  1024.      <F10>     :  Plot the waveform.
  1025.      <Alt-F10> :  Draw a new graph.
  1026.      < S >     :  Set the phaseshift to 0.2
  1027.      <F10>     :  Plot the waveform.
  1028.      <Alt-F10> :  Draw a new graph.
  1029.      < S >     :  Set the phaseshift to 0.3
  1030.      <F10>     :  Plot the waveform.
  1031.      <Alt-F10> :  Draw a new graph. 
  1032.      ---------->   keep incrementing the phaseshift in 0.1  increments  and 
  1033.      repeating the Plot/Draw sequence as many times as you like.
  1034.  
  1035.      < U >     :  When you are done, press the <U>nit circle enable twice
  1036.      < U >        to clear the area where the graphs are drawn.
  1037.      <ESC>     :  Clear the main screen.
  1038.      < D >     :  Return to default values.
  1039.  
  1040.      As you can see, the phase shift can be used to "massaged" two-
  1041.      dimensional shapes.
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.      GRAPH User's Manual                                          Page 17
  1058.  
  1059.  
  1060.      Exercise:  Drawing a "Limacon."
  1061.  
  1062.      < M >     :  Enter the following modulation formula:
  1063.                   (O1+O2)/2
  1064.      <F7 >     :  Enable modulation waveform plotting.
  1065.      <F9 >     :  Disable component waveforms.
  1066.  
  1067.      <F1 >     :  Enable sinewave in oscillator #1.
  1068.      < 2 >     :  Assign oscillator #2.
  1069.      <F1 >     :  Enable sinewave.
  1070.      < C >     :  Set cycles to 2.
  1071.      <F10>     :  Plot the waveform.
  1072.  
  1073.      < B >     :  Change to alternate bank of oscillators
  1074.      < 1 >     :  Assign oscillator #1.
  1075.      <F3 >     :  Enable cosinewave.
  1076.      < C >     :  Set cycles to 2.
  1077.      < 2 >     :  Assign oscillator #2.
  1078.      <F3 >     :  Enable cosinewave.
  1079.      <F10>     :  Plot the waveform.
  1080.      <Alt-F10> :  Draw the limacon.
  1081.  
  1082.  
  1083.      Now then, this Limacon is pretty cute, but it's painfully tiny to look 
  1084.      at.  For this reason, you can draw the object in larger size in the 
  1085.      box where the waveforms are usually plotted.  To do this, execute the 
  1086.      following keystrokes.
  1087.  
  1088.      <Alt- F9> :  Draw the limacon, but first...
  1089.                   After you press <Alt-F9>, the prompt "Scale: " will 
  1090.                   appear at the lower left hand part of the large display 
  1091.                   area.  If we want to observe the object at 3 times the 
  1092.                   size it was plotted at before, we can simply type a <3> 
  1093.                   followed by <Enter> to scale the object to a factor of 3.
  1094.  
  1095.      Be careful not to make the scaling factor too large, or you will not 
  1096.      be able to see all of the object!
  1097.  
  1098.      Now then, you probably noticed that the limacon looks very 
  1099.      disconnected when it is displayed in the large box.  To fix this 
  1100.      problem, we need to increase the resolution, and replot both complex 
  1101.      waveforms.
  1102.  
  1103.      < R >     :  Change the resolution to 0.25
  1104.      <ESC>     :  Clear the large waveform display area.
  1105.      <F10>     :  Replot the waveform.
  1106.      < B >     :  Change banks.
  1107.      <F10>     :  Replot the other waveform.
  1108.      <Alt- F9> :  Redraw the limacon in the large waveform display area.
  1109.                   (Do not forget to enter the scaling factor for the object). 
  1110.  
  1111.      Try the <Alt- F9> option several times at different scaling factors, 
  1112.      to get the feel for it.  Sometimes the two-dimensional shapes look 
  1113.      much different at particular sizes.
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.      GRAPH User's Manual                                          Page 18
  1124.  
  1125.  
  1126.      Note:  If you would like to plot both complex waveforms via one 
  1127.      keystroke, you may use the following keystrokes to do so:
  1128.  
  1129.      <ESC>     :  Clear the screen.
  1130.  
  1131.      < U >     :  When you are done, press the <U>nit circle enable twice
  1132.      < U >        to clear the area where the graphs are drawn.
  1133.  
  1134.      < 1 >     :  Assign first oscillator.
  1135.      < S >     :  Change phase<S>hift to .15
  1136.      < B >     :  Change banks.
  1137.      < 2 >     :  Assign second oscillator. 
  1138.      < S >     :  Change Phase<S>hift to .25
  1139.  
  1140.      < R >     :  Change the resolution to 0.75
  1141.      <Alt- F1> :  Plot BOTH complex waveforms.
  1142.      <Alt- F10>:  Sketch the two-dimensional waveform
  1143.  
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.      Section 4.4 - Printing a copy of your graph.
  1150.  
  1151.      If you have an EPSON compatible printer, you can print your graphs as 
  1152.      you create them.  This is done by pressing the following key:
  1153.  
  1154.      < O >     :  Output the contents of the display to the printer.
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.      Lesson 5 - A diverse collection of two-dimensional shapes.
  1163.  
  1164.  
  1165.      You may wish to exercise these keystrokes between each plot:
  1166.  
  1167.      < D >     :  Assign defaults parameters.
  1168.      <ESC>     :  Clear the screen
  1169.      < U >     :  When you are done, press the <U>nit circle enable twice
  1170.      < U >        to clear the area where the graphs are drawn.
  1171.  
  1172.  
  1173.  
  1174.  
  1175.      Object #1 :  Flower pattern
  1176.      -------------------------------------------------------
  1177.      < R >     :  Set resolution to 0.5  (Recommended only!)
  1178.  
  1179.      < 1 >     :  Assign oscillator #1.
  1180.      <F1 >     :  Enable Sine. 
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.      GRAPH User's Manual                                          Page 19
  1190.  
  1191.  
  1192.      < S >     :  Set phase<S>hift to 0.5
  1193.  
  1194.      < 2 >     :  Assign oscillator #2.
  1195.      <F3 >     :  Enable Cosine.
  1196.      < A >     :  Set <A>mplitude to 25.
  1197.      < C >     :  Set <C>ycles to 4.
  1198.  
  1199.      < B >     :  Switch to alternate bank of oscillators.
  1200.      < 1 >     :  Assign oscillator #1.
  1201.      <F3 >     :  Enable Cosine.
  1202.      < S >     :  set phase<S>hift to 0.5
  1203.  
  1204.      < 2 >     :  Assign oscillator #2.
  1205.      <F1 >     :  Enable Sine.
  1206.      < A >     :  Set <A>mplitude to 25.
  1207.      < C >     :  Set <C>ycles to 4.
  1208.  
  1209.      < M >     :  Enter modulation formula:
  1210.                   (O1+O2)/2
  1211.  
  1212.      <F7 >     :  Enable modulation.
  1213.      <F9 >     :  Plot Modulation only.
  1214.  
  1215.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1216.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1217.  
  1218.      ( Don't forget to clear all defaults before you try the next object! )
  1219.  
  1220.  
  1221.  
  1222.  
  1223.      Object #2 :  Hang-glider.
  1224.      -------------------------------------------------------
  1225.      < R >     :  Set resolution to 0.2  (Recommended only!)
  1226.  
  1227.      < 1 >     :  Assign oscillator #1.
  1228.      <F1 >     :  Enable Sine. 
  1229.        
  1230.      < 2 >     :  Assign oscillator #2.
  1231.      <F1 >     :  Enable Sine.
  1232.      < C >     :  Set <C>ycles to 3.
  1233.  
  1234.      < 3 >     :  Assign oscillator #3.
  1235.      <F1 >     :  Enable Sine.
  1236.      < C >     :  Set <C>ycles to 5.
  1237.  
  1238.      < 4 >     :  Assign oscillator #4.
  1239.      <F1 >     :  Enable Sine.
  1240.      < C >     :  Set <C>ycles to 7.
  1241.  
  1242.      < B >     :  Switch to alternate bank of oscillators.
  1243.      < 1 >     :  Assign oscillator #1.
  1244.      <F3 >     :  Enable Cosine.
  1245.      < S >     :  Set phase<S>hift to 0.25
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.      GRAPH User's Manual                                          Page 20
  1256.  
  1257.  
  1258.      < 2 >     :  Assign oscillator #2.
  1259.      <F3 >     :  Enable Cosine.
  1260.      < C >     :  Set <C>ycles to 2.
  1261.      < S >     :  Set phase<S>hift to 0.25
  1262.  
  1263.      < 3 >     :  Assign oscillator #3.
  1264.      <F3 >     :  Enable Cosine.
  1265.      < C >     :  Set <C>ycles to 3.
  1266.      < S >     :  Set phase<S>hift to 0.25
  1267.  
  1268.      < 4 >     :  Assign oscillator #4.
  1269.      <F3 >     :  Enable Cosine.
  1270.      < C >     :  Set <C>ycles to 4.
  1271.      < S >     :  Set phase<S>hift to 0.25
  1272.  
  1273.      < M >     :  Enter modulation formula:
  1274.                   (O1+O2+O3+O4)/4
  1275.  
  1276.      <F7 >     :  Enable modulation.
  1277.      <F9 >     :  Plot Modulation only.
  1278.  
  1279.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1280.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1281.  
  1282.      ( Don't forget to clear all defaults before you try the next object! )
  1283.  
  1284.  
  1285.  
  1286.  
  1287.      Object #3:  Fat squiggly thing.
  1288.      -------------------------------------------------------
  1289.      < R >     :  Set resolution to 0.2  (Recommended only!)
  1290.  
  1291.      < 1 >     :  Assign oscillator #1.
  1292.      <F1 >     :  Enable Sine.
  1293.      < C >     :  Set <C>ycles to 2.
  1294.  
  1295.      < 2 >     :  Assign oscillator #2.
  1296.      <F1 >     :  Enable Sine.
  1297.      < C >     :  Set <C>ycles to 8.
  1298.  
  1299.      < B >     :  Switch to alternate bank of oscillators.
  1300.      < 1 >     :  Assign oscillator #1.
  1301.      <F1 >     :  Enable Sine.
  1302.  
  1303.      < 2 >     :  Assign oscillator #2.
  1304.      <F1 >     :  Enable Sine.
  1305.      < C >     :  Set <C>ycles to 6.
  1306.  
  1307.      < M >     :  Enter modulation formula:
  1308.                   (O1+O2+O3+O4)/3
  1309.  
  1310.      <F7 >     :  Enable modulation.
  1311.      <F9 >     :  Plot Modulation only.
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.      GRAPH User's Manual                                          Page 21
  1322.  
  1323.  
  1324.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1325.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1326.  
  1327.  
  1328.  
  1329.  
  1330.      Object #4:  Fast squiggly thing.
  1331.      -------------------------------------------------------
  1332.      < R >     :  Set resolution to 0.2  (Recommended only!)
  1333.  
  1334.      < 1 >     :  Assign oscillator #1.
  1335.      <F1 >     :  Enable Sine.
  1336.      < C >     :  Set <C>ycles to 4.
  1337.  
  1338.      < 2 >     :  Assign oscillator #2.
  1339.      <F1 >     :  Enable Sine.
  1340.      < C >     :  Set <C>ycles to 10.
  1341.  
  1342.      < B >     :  Switch to alternate bank of oscillators.
  1343.      < 1 >     :  Assign oscillator #1.
  1344.      <F1 >     :  Enable Sine.
  1345.  
  1346.      < 2 >     :  Assign oscillator #2.
  1347.      <F1 >     :  Enable Sine.
  1348.      < C >     :  Set <C>ycles to 20.
  1349.  
  1350.      < M >     :  Enter modulation formula:
  1351.                   (O1+O2)/2
  1352.  
  1353.      <F7 >     :  Enable modulation.
  1354.      <F9 >     :  Plot Modulation only.
  1355.  
  1356.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1357.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1358.  
  1359.  
  1360.  
  1361.  
  1362.      Object #5:  Floating Three-Dimensional object.
  1363.      -------------------------------------------------------
  1364.      < R >     :  Set resolution to 0.4  (Recommended only!)
  1365.  
  1366.      < 1 >     :  Assign oscillator #1.
  1367.      <F1 >     :  Enable Sine.
  1368.  
  1369.      < 2 >     :  Assign oscillator #2.
  1370.      <F1 >     :  Enable Sine.
  1371.      < C >     :  Set <C>ycles to 4.
  1372.  
  1373.      < B >     :  Switch to alternate bank of oscillators.
  1374.      < 1 >     :  Assign oscillator #1.
  1375.      <F1 >     :  Enable Sine.
  1376.  
  1377.      < 2 >     :  Assign oscillator #2.
  1378.      <F1 >     :  Enable Sine.
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.      GRAPH User's Manual                                          Page 22
  1388.  
  1389.  
  1390.      < C >     :  Set <C>ycles to 3.
  1391.  
  1392.      < M >     :  Enter modulation formula:
  1393.                   (O1+O2)/2
  1394.  
  1395.      <F7 >     :  Enable modulation.
  1396.      <F9 >     :  Plot Modulation only.
  1397.  
  1398.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1399.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1400.  
  1401.  
  1402.  
  1403.  
  1404.      Object #6:  Elegant Three-Dimensional squiggle.
  1405.      -------------------------------------------------------
  1406.      < R >     :  Set resolution to 0.2  (Recommended only!)
  1407.  
  1408.      < 1 >     :  Assign oscillator #1.
  1409.      <F1 >     :  Enable Sine.
  1410.      < A >     :  Set <A>mplitude to 10.
  1411.      < C >     :  Set <C>ycles to 2.
  1412.  
  1413.      < 2 >     :  Assign oscillator #2.
  1414.      <F3 >     :  Enable Cosine.
  1415.      < A >     :  Set <A>mplitude to 100
  1416.      < C >     :  Set <C>ycles to 2.
  1417.  
  1418.      < 3 >     :  Assign oscillator #3.
  1419.      <F1 >     :  Enable Sine.
  1420.      < C >     :  Set <C>ycles to 3.
  1421.  
  1422.      < 4 >     :  Assign oscillator #4.
  1423.      <F1 >     :  Enable Sine.
  1424.      < C >     :  Set <C>ycles to 9.
  1425.  
  1426.      < B >     :  Switch to alternate bank of oscillators.
  1427.      < 1 >     :  Assign oscillator #1.
  1428.      <F3 >     :  Enable Cosine.
  1429.      < C >     :  Set <C>ycles to 4.
  1430.  
  1431.      < 2 >     :  Assign oscillator #2.
  1432.      <F1 >     :  Enable Sine.
  1433.  
  1434.      < 3 >     :  Assign oscillator #3.
  1435.      <F1 >     :  Enable Sine.
  1436.  
  1437.      < 4 >     :  Assign oscillator #4.
  1438.      <F1 >     :  Enable Sine.
  1439.  
  1440.      < M >     :  Enter modulation formula:
  1441.                   (O1+O2+O3+O4)/3
  1442.  
  1443.      <F7 >     :  Enable modulation.
  1444.      <F9 >     :  Plot Modulation only.
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.      GRAPH User's Manual                                          Page 23
  1454.  
  1455.  
  1456.  
  1457.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1458.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1459.  
  1460.  
  1461.  
  1462.  
  1463.      Object #7:  A circle travelling in three dimensions.
  1464.      -------------------------------------------------------
  1465.      < R >     :  Set resolution to 0.011
  1466.  
  1467.      < 1 >     :  Assign oscillator #1.
  1468.      <F3 >     :  Enable Cosine.
  1469.      < S >     :  Set Phase<S>hift to 0.3
  1470.  
  1471.      < 2 >     :  Assign oscillator #2.
  1472.      <F1 >     :  Enable Sine.
  1473.      < A >     :  Set <A>mplitude to 30.
  1474.      < C >     :  Set <C>ycles to 99
  1475.  
  1476.      < 3 >     :  Assign oscillator #3.
  1477.      <F1 >     :  Enable Sine.
  1478.      < A >     :  Set <A>mplitude to 5.
  1479.      < C >     :  Set <C>ycles to 4.
  1480.  
  1481.      < B >     :  Switch to alternate bank of oscillators.
  1482.      < 1 >     :  Assign oscillator #1.
  1483.      <F3 >     :  Enable Cosine.
  1484.  
  1485.      < 2 >     :  Assign oscillator #2.
  1486.      <F3 >     :  Enable Cosine.
  1487.      < A >     :  Set <A>mplitude to 30.
  1488.      < C >     :  Set <C>ycles to 100.
  1489.  
  1490.      < 3 >     :  Assign oscillator #3.
  1491.      <F3 >     :  Enable Cosine.
  1492.      < A >     :  Set <A>mplitude to 5.
  1493.      < C >     :  Set <C>ycles to 3.
  1494.  
  1495.      < M >     :  Enter modulation formula:
  1496.                   (O1+O2+O3)/2
  1497.  
  1498.      <F7 >     :  Enable modulation.
  1499.      <F9 >     :  Plot Modulation only.
  1500.  
  1501.      <Alt-F1 > :  Plot both banks of complex waveforms.
  1502.      <Alt-F9 > :  Plot two-dimensional shape with Scaling factor of 3.
  1503.  
  1504.      Note:  This "object" will take a long time to plot!
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.      GRAPH User's Manual                                          Page 24
  1520.  
  1521.  
  1522.      Appendix  -   Feedback,
  1523.                    Registration,
  1524.                    Program developments.
  1525.  
  1526.      Now we have covered all of the commands available to you in the 
  1527.      program "GRAPH."  Again, we would very much like to hear from you!  If 
  1528.      you like, you may send the following two-page questionnaire back to us. 
  1529.      This will give us a feeling for where program developments and 
  1530.      improvements need to be made, as well as the order in which we should 
  1531.      take care of them.
  1532.  
  1533.      If you would like to register, we welcome this of course.  As stated 
  1534.      before, you will receive a free update to the next version of GRAPH,
  1535.      which will be quite substantial.  You will also receive the 
  1536.      newsletter, which contains settings for some exceptionally beautiful 
  1537.      two-dimensional plots as well as information about various interesting 
  1538.      articles about various applications concerning our programs.  Emphasis 
  1539.      of articles will be on PACIFIC LASER ART endeavors which involve 
  1540.      exploration of mathematics, and hardware/software design.
  1541.  
  1542.      As of this date, our latest endeavor is a project tentatively named 
  1543.      WIREANIM.  This package is a shape animator/sequencer designed to 
  1544.      create and manipulate two-dimensional objects.  The main reason why we 
  1545.      are referring to it here is that it is designed largely to expand the 
  1546.      capabilities of GRAPH.  Those who make up PACIFIC LASER ART loathe 
  1547.      vaporware, but we thought it would be healthy to let people know what 
  1548.      is in the works.  
  1549.  
  1550.      We hope that you enjoy exploring our products.
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.      Questionnaire  (optional)
  1589.  
  1590.      This questionnaire is included to give us feedback about your feelings 
  1591.      about "GRAPH."  By returning this questionnaire to us, you will help 
  1592.      to shape the program into you want it to be.  You may answer one, or 
  1593.      several, or all of the questions as you feel is necessary.  
  1594.  
  1595.  
  1596.       1. Please indicate the types of computers that you use on a regular 
  1597.          basis?
  1598.  
  1599.      ___ a) 8088/8086 IBM PC or clone     ___ e) Apple Macintosh SE
  1600.      ___ b) 80286 IBM PC or clone         ___ f) Apple Macintosh ][
  1601.      ___ c) 80386 IBM PC or clone         ___ g) Commodore Amiga 500           
  1602.      ___ d) Apple Macintosh Plus          ___ h) Commodore Amiga 2000/2500
  1603.  
  1604.       2. What speed does your PC or PC clone run at?
  1605.      ___ a) 4.77 megahertz                ___ f) 16 megahertz
  1606.      ___ b) 6 megahertz                   ___ g) 20 megahertz
  1607.      ___ c) 8 megahertz                   ___ h) 25 megahertz
  1608.      ___ d) 10 megahertz                  ___ i) 33 megahertz
  1609.      ___ e) 12 megahertz                  ___ j) More than 33 megahertz
  1610.  
  1611.       3. Do you have a math coprocessor in your PC or PC clone?
  1612.      ___ a) Yes                           ___ b) No
  1613.  
  1614.       4. What type of display adapter are you using in your PC or PC clone?
  1615.      ___ a) Hercules Monochrome Graphics Adapter
  1616.      ___ b) AT&T400 Monochrome Graphics Adapter
  1617.      ___ c) Enhanced Graphics Adapter (EGA)
  1618.      ___ d) Video Graphics Array (VGA)
  1619.      ___ e) Other
  1620.  
  1621.       5. How did you find out about "GRAPH?"
  1622.      ___ a) Word of mouth
  1623.      ___ b) Advertisement
  1624.      ___ c) Software distributor
  1625.  
  1626.       6. Are you satisfied with the speed at which "GRAPH" plots simple and 
  1627.          complex trigonometric waveforms?
  1628.      ___ a) Yes                           ___ b) No
  1629.  
  1630.       7. Did you like the overall idea and implementation of "GRAPH?"
  1631.      ___ a) Yes                           ___ b) No
  1632.  
  1633.       8. Was the program useful to you in terms of:
  1634.      ___ a) Mathematical learning
  1635.      ___ b) Artistic enjoyment
  1636.      ___ c) Educational tool
  1637.      ___ d) Entertainment
  1638.      ___ e) Other (Please specify) ______________________________________
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.       9. Which of the following capabilities would you like to see 
  1655.      incorporated into the program "GRAPH:"
  1656.  
  1657.      ___Yes ___No  (a) more oscillators for each bank.
  1658.      ___Yes ___No  (b) availability of non-trigonometric waveforms such as
  1659.                        triangle, saw-tooth, & digital waveforms.
  1660.      ___Yes ___No  (c) a shape/waveform editor.
  1661.      ___Yes ___No  (d) a shape sequencer/animator.
  1662.      ___Yes ___No  (e) 3D shape generation capabilities.
  1663.      ___Yes ___No  (f) A mouse driven user interface.
  1664.      ___Yes ___No  (g) Shape rotation
  1665.      ___Yes ___No  (h) more extensive documentation.
  1666.      ___Yes ___No  (i) A documented file format for loading
  1667.                        and saving shapes to your disk.
  1668.      ___Yes ___No  (j) Digital to Analogue or Analogue to
  1669.                        digital conversion for waveforms.
  1670.      ___Yes ___No  (k) availability of source code.
  1671.      ___Yes ___No  (l) more extensive documentation.
  1672.      ___Yes ___No  (m) Polar coordinate plotting capabilities.
  1673.      ___Yes ___No  (n) a formula generator for each plot.
  1674.      ___Yes ___No  (o) a more sophisticated modulation formula interpreter 
  1675.                        so that multiplication, division and exponentiation
  1676.                        of functions can be plotted on the screen
  1677.  
  1678.  
  1679.      10. If you could magically change one thing about the program itself,
  1680.          what would it be.
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.      11. What is your area of focus in your line of occupation:
  1688.      ___ a) Physics
  1689.      ___ b) Mathematics
  1690.      ___ c) Engineering
  1691.      ___ d) Computer Scientist
  1692.      ___ e) Artist
  1693.      ___ f) other (Please specify) _______________________________________
  1694.  
  1695.      12. If you consider yourself to be artistically inclined, could you
  1696.          please briefly tell us where your artistic interests lie.  If your
  1697.          artistic interests relate to this program, could you please tell
  1698.          us about this relation.
  1699.  
  1700.      13. Additional comments:
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.